package cn.zzuisa.controller;


import cn.zzuisa.base.R;
import cn.zzuisa.entity.Module;
import cn.zzuisa.service.ModuleService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author frank
 * @since 2019-05-07
 */
@Api(tags = "模块管理")
@RestController
@RequestMapping("/module")
public class ModuleController {

    @Autowired
    ModuleService moduleService;

    // 查询所有模块
    @GetMapping("/list")
    public R<List<Map<String,Object>>> list() {
        return R.ok(moduleService.listModule());
    }

    // 添加模块
    @PostMapping("/new")
    public R<Module> add(@RequestBody Module module) {
        if(module == null || module.getName() == null) {
            return R.error(null);
        }
        moduleService.save(module);
        return R.ok(module);
    }
    // 编辑模块
    @PutMapping("/update")
    public R<Module> update(@RequestBody Module module) {
        if(module == null) {
            return R.error(null);
        }
        moduleService.updateById(module);
        return R.ok(module);
    }

}
